Paquetes empleados
# Cargamos los paquetes
library(tidyverse)
library(dplyr)
library(readr)
library(tidyr)
library(stringr)
library(jsonlite)
library(ggplot2)
library(ggthemes)
library(ggtext)
library(ggrepel)
library(patchwork)
library(sf)
library(mapSpain)
library(plotly)Cargamos el enviroment necesario.
Funciones para abrir los CSVs que utilizaremos y el
Json.
#Función para leer los CSV de salud mental, itera sobre el directorio que le pasemos y crea una lista que contiene todos los csvs que utilizaremos.
leer_csvs_salud_mental <- function(directorio, delim_fijo, patron = "\\.csv$") {
archivos <- list.files(path = directorio, pattern = patron, full.names = TRUE)
lista_datos <- list()
for (archivo in archivos) {
nombre <- tools::file_path_sans_ext(basename(archivo))
datos <- tryCatch(
read_delim(archivo, delim = delim_fijo, locale = locale(encoding = "UTF-8")),
error = function(e) {
read_delim(archivo, delim = delim_fijo, locale = locale(encoding = "Latin1"))
}
)
colnames(datos) <- make.names(colnames(datos))
lista_datos[[nombre]] <- datos
}
return(lista_datos)
}
mis_datos_salud_mental<- leer_csvs_salud_mental(directorio="Datos_salud_mental", delim_fijo = ";")
#Dirección web (URL) donde se encuentra nuestr Json.
url_api_ine <- "https://servicios.ine.es/wstempus/js/ES/DATOS_TABLA/47804"
#Convierte los datos de la web a un objeto Json de R
json_nivel_estudios<-jsonlite::fromJSON(url_api_ine)
#Función que convierte el Json a una tabla
nivel_estudios_parseado <- tidyr::unnest(json_nivel_estudios, cols = Data)
tabla_nivel_estudios <- nivel_estudios_parseado %>%
tidyr::separate(
col = Nombre,
into = c("Sexo", "Edad", "Nivel_de_estudios", "Prevalencia_depresion"),
sep = ", "
) %>%
rename(Porcentaje = Valor) %>%
select(-Secreto)
#Función para leer los CSV de TICs, itera sobre el directorio que le pasemos y crea una lista que contiene todos los csvs que utilizaremos.
leer_csvs_datos_tic <- function(directorio, delim_fijo, patron = "\\.csv$") {
archivos <- list.files(path = directorio, pattern = patron, full.names = TRUE)
lista_datos <- list()
for (archivo in archivos) {
nombre <- tools::file_path_sans_ext(basename(archivo))
datos <- tryCatch(
read_delim(archivo, delim = delim_fijo, locale = locale(encoding = "UTF-8")),
error = function(e) {
read_delim(archivo, delim = delim_fijo, locale = locale(encoding = "Latin1"))
}
)
colnames(datos) <- make.names(colnames(datos))
lista_datos[[nombre]] <- datos
}
return(lista_datos)
}En nuestro seminario analizaremos cómo factores tecnológicos impactan en la salud mental a nivel de España.
Pregunta 1: ¿Cuál es el perfil de la población más digitalizada en España y cuál es el perfil de la población con más problemas de salud mental?
Utilizaremos datos procesados con R, provenientes de la siguiente fuente oficial:
Para entender la magnitud del problema, primero analizamos la distribución de la depresión según los siguientes factores.
Se representa en el eje x el porcentaje de cuadros depresivos, en el eje y la situación laboral y se dividen los resultados en hombres y mujeres.
En el siguiente gráfico vemos datos depresivos mayores en mujeres que en hombres.
Dato Crítico: El grupo de Desempleo presenta las tasas más altas de Cuadro Depresivo Mayor, superando significativamente al grupo que trabaja .
# Código extraído de: Tabla_situacion_laboral.R y Grafico_situacion_laboral.R
# Tabla
datos_grafico_estudios <- mis_datos_salud_mental$depresion_actividad_economica %>%
mutate(
Porcentaje = parse_number(Total, locale = locale(decimal_mark = ","))
) %>%
filter(
Sexo != "Ambos sexos",
Actividad.económica != "TOTAL",
Prevalencia.depresión %in% c("Cuadro depresivo mayor", "Otros cuadros depresivos")
)
# Gráfico
g_actividad_apilado <- ggplot(datos_grafico_estudios,
aes(x = reorder(Actividad.económica, Porcentaje),
y = Porcentaje,
fill = Prevalencia.depresión)) +
geom_bar(stat = "identity") +
geom_text(
aes(label = paste0(round(Porcentaje, 1), "%")),
position = position_stack(vjust = 0.5),
color = "black",
size = 2,
fontface = "bold"
)+
facet_wrap(~ Sexo) +
coord_flip() +
labs(
title = "Depresión por Situación Laboral y Sexo",
x = "", # Dejamos vacío porque los nombres de actividad ya describen el eje
y = "Porcentaje Total (%)",
fill = "Diagnóstico"
) +
scale_fill_brewer(palette = "Blues") +
theme_minimal() +
theme(
legend.position = "bottom",
plot.title = element_text(face = "bold")
)
print(g_actividad_apilado)Analizamos la gravedad de la depresión en función de los estudios.
# Código extraído de: Tabla_nivel_estudios.R y Grafico_nivel_estudios.R
tabla_nivel_estudios <- nivel_estudios_parseado %>%
tidyr::separate(
col = Nombre,
into = c("Sexo", "Edad", "Nivel_de_estudios", "Prevalencia_depresion"),
sep = ", "
) %>%
rename(Porcentaje = Valor) %>%
select(-Secreto)
datos_grafico_estudios <- tabla_nivel_estudios %>%
filter(
Sexo != "Ambos sexos",
Nivel_de_estudios != "Total",
Edad == "TOTAL",
Prevalencia_depresion %in% c("Cuadro depresivo mayor", "Otros cuadros depresivos")
) %>%
mutate(Nivel_de_estudios= factor(
Nivel_de_estudios, levels = c("TOTAL", "Básico e inferior", "Intermedio","Superior" )
)
)
grafico_nivel_estudios<- ggplot(datos_grafico_estudios,
aes(x = Nivel_de_estudios,
y = Porcentaje,
fill = Prevalencia_depresion)) +
geom_col() +
facet_wrap(~ Sexo) +
coord_flip() +
labs(
title = "Depresión por Nivel de Estudios y Sexo",
subtitle = "Cuadro depresivo mayor y Otros cuadros depresivos",
x = "Nivel de Estudios",
y = "Porcentaje Total de Prevalencia (%)",
fill = "Prevalencia"
) +
scale_fill_brewer(palette = "Blues") +
theme_minimal()
print(grafico_nivel_estudios)Vamos a ver la distribución de las TIC sobre el territorio español.
Hemos unificado los datos de niños, adultos y mayores para crear un “Índice Digital”
Las zonas más oscuras es donde más uso de las TICs hay, las zonas menos claras tienen un menor uso de estas.
# Código extraído de: Uso_TICs.R
#Función para obtener las tablas de adultos y mayores.
funcion_tic_adultos_mayores <- function(csv_tic, tipo_poblacion, uso_frecuente) {
datos_limpios <- csv_tic %>%
filter(
Clase.de.población == tipo_poblacion,
Frecuencia.de.uso %in% uso_frecuente,
Comunidades.y.Ciudades.Autónomas != "Total nacional"
) %>%
select(
Comunidad = Comunidades.y.Ciudades.Autónomas,
Porcentaje = Total
) %>%
mutate(
Porcentaje = parse_number(Porcentaje, locale = locale(decimal_mark = ","))
) %>%
group_by(Comunidad) %>%
summarise(
Frecuencia_Total = mean(Porcentaje, na.rm = TRUE),
Desviacion_Estandar = sd(Porcentaje, na.rm = TRUE)
)
return(datos_limpios)
}
#Tabla niños pivotada que usaremos para hacer el join.
niños_tabla_pivotada<- niños_tabla %>%
tidyr::pivot_wider(
names_from = Tipo_poblacion_niños,
values_from = Porcentaje_niños
) %>%
select(Comunidad,
Niños_internet = `Niños usuarios de Internet en los últimos 3 meses`,
Niños_ordenador = `Niños usuarios de ordenador en los últimos 3 meses`,
Niños_con_movil = `Niños que disponen de teléfono móvil`
)
#Join de tabla adultos y mayores
adultos_y_mayores <- adultos_tabla %>%
full_join(mayores_tabla, by = c("Comunidad"))
#Join con las tres tablas, tabla uso_tic_total usada para hacer el mapa de España.
uso_tic_total<- adultos_y_mayores %>%
full_join(niños_tabla_final, by = "Comunidad") %>%
select(Comunidad , Frecuencia_Total_Niños, Frecuencia_Total_Adultos, Frecuencia_Total_Mayores)# Código extraído de: Mapa_España_TICs.R
uso_tic_total<- adultos_y_mayores %>%
full_join(niños_tabla_final, by = "Comunidad") %>%
select(Comunidad , Frecuencia_Total_Niños, Frecuencia_Total_Adultos, Frecuencia_Total_Mayores)
mapa_españa_ccaa <- esp_get_ccaa(moveCAN = TRUE)
# Corrección para mapa
uso_tic_total_corregido_mapa <- uso_tic_total %>%
mutate(
Comunidad = case_when(
Comunidad == "Asturias, Principado de"~"Asturias",
Comunidad == "Balears, Illes" ~ "Baleares",
Comunidad == "Castilla - La Mancha" ~ "Castilla-La Mancha",
Comunidad == "Comunitat Valenciana" ~ "Comunidad Valenciana",
Comunidad == "Madrid, Comunidad de" ~ "Madrid",
Comunidad == "Murcia, Región de" ~ "Murcia",
Comunidad == "Navarra, Comunidad Foral de" ~ "Navarra",
Comunidad == "Rioja, La" ~ "La Rioja",
TRUE ~ Comunidad
)
)
#Join para crear la tabla para representar el mapa
mapa_con_datos <- mapa_españa_ccaa %>%
left_join(uso_tic_total_corregido_mapa, by = c("ccaa.shortname.es" = "Comunidad"))
#Creación del mapa
datos_mapa_coloreado <- mapa_con_datos %>%
mutate(
Uso_Global_Indice = (Frecuencia_Total_Adultos+ Frecuencia_Total_Niños+ Frecuencia_Total_Mayores)/3,
tooltip_data = paste0(
'<b>', ccaa.shortname.es, "</b><br>",
"--------------------------<br>",
"Índice Global: ", round(Uso_Global_Indice, 1), "%<br>",
"Adultos: ", round(Frecuencia_Total_Adultos, 1), "%<br>",
"Niños: ", round(Frecuencia_Total_Niños, 1), "%<br>",
"Mayores: ", round(Frecuencia_Total_Mayores, 1), "%"
)
)
mapa_intensidad <- ggplot(data = datos_mapa_coloreado) +
geom_sf(
aes(fill = Uso_Global_Indice, text = tooltip_data),
color = "white", size = 0.2
) +
geom_sf_text(
aes(label = ccaa.shortname.es),
size = 2,
color = "black",
fontface = "bold",
check_overlap = TRUE
) +
scale_fill_gradient(
low = "#EBF5FB",
high = "#21618C",
name = "Intensidad de Uso"
) +
theme_void() +
labs(title = "Intensidad del uso de TICs en España ") +
theme(
legend.position = "right",
plot.title = element_text(hjust = 0.5, face = "bold")
)
#Para hacer el mapa interactivo
mapa_final_españa <- ggplotly(mapa_intensidad, tooltip = "text") %>%
style(hoveron = "fills", traces = 1) %>%
layout(
hoverlabel = list(bgcolor = "white", bordercolor = "black", font = list(color = "black"))
)
mapa_final_españaEl resultado se debe al factor de la edad media de cada comunidad autónoma, lo explicaremos en el siguiente gráfico.
Podemos observar que las zonas con mayor densidad de población presentan los índices de uso más altos.
Como conclusión de este mapa vemos que el uso de las TICs se concentra donde hay más gente y más joven.
A continuación vamos a definir cual es el perfil de las personas que utilizan las TIC en España, observando en las distintas Comunidades Autónomas y clasificando por edad.
Niños (10-15 años):
Adultos (16-74 años):
Mayores (75+ años):
# Código extraído de: Grafico_barras_TICs.R
# Corrección nombres
uso_tic_total_corregido <- uso_tic_total %>%
mutate(
Comunidad = case_when(
Comunidad == "Asturias, Principado de"~"Asturias",
Comunidad == "Balears, Illes" ~ "Baleares",
Comunidad == "Castilla - La Mancha" ~ "Castilla-La Mancha",
Comunidad == "Comunitat Valenciana" ~ "Comunidad Valenciana",
Comunidad == "Madrid, Comunidad de" ~ "Madrid",
Comunidad == "Murcia, Región de" ~ "Murcia",
Comunidad == "Navarra, Comunidad Foral de" ~ "Navarra",
Comunidad == "Rioja, La" ~ "La Rioja",
TRUE ~ Comunidad
)
)
# Pivotaje
uso_tic_total_pivotada <- uso_tic_total_corregido %>%
pivot_longer(
cols= -Comunidad,
names_to = "Grupo_Edad",
values_to = "Frecuencia_Total"
)
orden_grupos <- c("Frecuencia_Total_Niños", "Frecuencia_Total_Adultos", "Frecuencia_Total_Mayores")
names_grupos <- c("Niños (10-15)", "Adultos (16-74)", "Mayores (75+)")
uso_tic_ordenada <- uso_tic_total_pivotada %>%
mutate(Grupo_Edad = factor(Grupo_Edad, levels = orden_grupos, labels = names_grupos))
# Gráfico
ggplot(uso_tic_ordenada, aes(x=Comunidad, y=Frecuencia_Total, fill=Grupo_Edad))+
geom_bar(stat = "identity", position = "dodge")+
labs(
title= "Perfil de Uso Frecuente de las TIC por Edad y Comunidad",
y= "Porcentaje de Uso Promedio (%)",
x= "",
fill = "Grupo de Edad")+
scale_fill_brewer(palette = "Blues") +
theme_classic()+
theme(
axis.text.x = element_text(angle = 45, hjust = 1, size=10),
legend.position = "top"
)Vemos que el uso de las TICs es significativamente mayor en niños y adultos independientemente de la comunidad autónoma en la que nos encontremos.
Como conclusión vamos a definir que nuestro perfil de personas que utilizan las TICs claramente son tanto jóvenes como adultos.
Para enfocar nuestro seminario a partir de ahora nos centraremos en el grupo mayoritario en casi todas las comunidades, es decir, los adultos.
Pregunta 2: ¿Existe un patrón geográfico que vincule la intensidad de uso de las TICs con la prevalencia de la depresión en las distintas Comunidades Autónomas?
En este gráfico podemos observar cada comunidad autónoma situada en función de dos variables, la frecuencia del uso de internet (en adultos) y el porcentaje de cuadros depresivos.
Hemos dibujado una línea de tendencia para ver cuáles son las comunidades autónomas cuya correlación de depresión con frecuencia de uso es adecuada y sigue el modelo.
La sombra dibujada indica el intervalo de confianza, aquellas comunidades autónomas que estan dentro son las que tienen un comportamiento estadísticamente correcto, quiere decir que el porcentaje de depresión corresponde con el uso de las TICs.
# Código extraído de: Grafico_Tics_depresion_comunidades.R y Tabla_depresion_sexo_comunidades.R
uso_tic_adultos<-adultos_tabla%>%
filter(Comunidad != "Total nacional") %>%
mutate(
Comunidad = case_when(
Comunidad == "Andalucía" ~ "Andalucía",
Comunidad == "Aragón" ~ "Aragón",
Comunidad == "Asturias, Principado de" ~ "Asturias",
Comunidad == "Balears, Illes" ~ "Baleares",
Comunidad == "Canarias" ~ "Canarias",
Comunidad == "Cantabria" ~ "Cantabria",
Comunidad == "Castilla y León" ~ "Castilla y León",
Comunidad == "Castilla - La Mancha" ~ "Castilla - La Mancha",
Comunidad == "Comunitat Valenciana" ~ "Comunidad Valenciana",
Comunidad == "Extremadura" ~ "Extremadura",
Comunidad == "Galicia" ~ "Galicia",
Comunidad == "Madrid, Comunidad de" ~ "Madrid",
Comunidad == "Murcia, Región de" ~ "Murcia",
Comunidad == "Navarra, Comunidad Foral de" ~ "Navarra",
Comunidad == "País Vasco" ~ "País Vasco",
Comunidad == "Rioja, La" ~ "La Rioja",
Comunidad == "Ceuta" ~ "Ceuta",
Comunidad == "Melilla" ~ "Melilla",
TRUE ~ Comunidad
)
)
depresion_por_comunidades_corregido<- depresion_por_comunidades %>%
mutate(
Comunidad = case_when(
Comunidad == "Andalucía" ~ "Andalucía",
Comunidad == "Aragón" ~ "Aragón",
Comunidad == "Asturias (Principado de)" ~ "Asturias",
Comunidad == "Balears (Illes)" ~ "Baleares",
Comunidad == "Canarias" ~ "Canarias",
Comunidad == "Cantabria" ~ "Cantabria",
Comunidad == "Castilla y León" ~ "Castilla y León",
Comunidad == "Castilla -La Mancha" ~ "Castilla - La Mancha",
Comunidad == "Comunitat Valenciana" ~ "Comunidad Valenciana",
Comunidad == "Extremadura" ~ "Extremadura",
Comunidad == "Galicia" ~ "Galicia",
Comunidad == "Madrid (Comunidad de)" ~ "Madrid",
Comunidad == "Murcia (Región de)" ~ "Murcia",
Comunidad == "Navarra (Comunidad Foral de)" ~ "Navarra",
Comunidad == "País Vasco" ~ "País Vasco",
Comunidad == "Rioja (La)" ~ "La Rioja",
Comunidad == "Ceuta (Ciudad Autónoma de)" ~ "Ceuta",
Comunidad == "Melilla (Ciudad Autónoma de)" ~ "Melilla",
TRUE ~ Comunidad
),
Porcentaje_depresion = parse_number(Porcentaje_depresion, locale = locale(decimal_mark = ","))
)
tabla_tics_depresion_comunidades<- uso_tic_adultos%>%
left_join(depresion_por_comunidades_corregido, by = "Comunidad")
grafico_TICs_depresion_comunidad<-ggplot(data = tabla_tics_depresion_comunidades,
aes(x = Frecuencia_Total_Adultos,
y = Porcentaje_depresion)) +
geom_point(aes(colour = Comunidad), size = 3) +
geom_smooth(method = "lm", se = TRUE, color = "black", linetype = "dashed") +
geom_text_repel(aes(label = Comunidad), size = 3)+
labs(
title = "Relación entre Frecuencia Total de Adultos y % de Depresión",
subtitle = "Línea de tendencia global",
x = "Frecuencia TICs Adultos",
y = "Porcentaje de Depresión"
) +
guides(color= "none")+
theme_minimal()
grafico_TICs_depresion_comunidadComunidades autónomas con mayor uso de TICs tienen menores tasas de depresión como por ejemplo Melilla, las comunidades con menor uso de las TICs tienen valores de depresión parecidos o incluso más altos.
Generalmente podemos afirmar que cuanta mayor conexión digital menos depresión.
Pregunta 3: ¿Cómo influye el nivel de estudios en la relación entre el uso de las TICs y la prevalencia de la depresión?
A continuación, presentamos un gráfico que analiza la interacción entre el uso de las TICs y la salud mental, tomando como factor el nivel de estudios (clasificado en básico, intermedio y superior).
La línea azul representa la evolución del uso de las TICs.
La línea roja ilustra la tasa de depresión.
El objetivo del gráfico es observar cómo se comportan y correlacionan ambas variables
# Código extraído de: Grafico_nivel_estudios.R
tabla_nivel_estudios_final<- tabla_depresion_nivel_estudios %>%
full_join(tabla_tics_nivel_estudios, by= "Nivel_de_estudios")
max_tics <- max(tabla_nivel_estudios_final$Porcentaje_TICS, na.rm = TRUE)
max_depresion <- max(tabla_nivel_estudios_final$Porcentaje_Depresion, na.rm = TRUE)
factor_escala <- max_tics / max_depresion
ggplot(tabla_nivel_estudios_final,
aes(x = as.numeric(factor(Nivel_de_estudios,
levels = c("Básico e inferior", "Intermedio", "Superior"))),
group = 1)) +
geom_line(aes(y = Porcentaje_TICS, color = "Uso de TICs"), linewidth = 1.2) +
geom_point(aes(y = Porcentaje_TICS, color = "Uso de TICs"), size = 4) +
geom_text(aes(y = Porcentaje_TICS, label = round(Porcentaje_TICS, 1)), vjust = -1.5, fontface="bold") +
geom_line(aes(y = Porcentaje_Depresion * factor_escala, color = "Depresión"), linewidth = 1.2) +
geom_point(aes(y = Porcentaje_Depresion * factor_escala, color = "Depresión"), size = 4) +
geom_text(aes(y = Porcentaje_Depresion * factor_escala, label = round(Porcentaje_Depresion, 1)), vjust = 2, fontface="bold") +
scale_y_continuous(
name = "Uso de TICs (%)",
expand = expansion(mult = c(0.2, 0.2)),
sec.axis = sec_axis(~ . / factor_escala, name = "Depresión (%)")
) +
scale_x_continuous(
breaks = 1:3,
labels = c("Básico e inferior", "Intermedio", "Superior"),
name = "Nivel de Estudios"
) +
labs(
title = "Relación TICs con Depresión por Nivel de Estudios",
subtitle = "Relación inversa entre adopción tecnológica y depresión",
color = ""
) +
theme_classic() +
theme(legend.position = "bottom")Aquí vemos claramente cómo el nivel de estudios marca la diferencia. Las personas con formación superior son las que más utilizan la tecnología, mientras que en los niveles básicos el uso cae drásticamente.
Lo interesante es que esto encaja perfectamente con lo que vimos antes: al aumentar el nivel de estudios, sube el uso de las TICs y baja la depresión. Es decir, la formación superior no solo garantiza más conectividad, sino también una mejor salud mental.”
Pregunta 3: ¿Influye la situación laboral en la relación entre tecnología y salud mental?
En nuestro gráfico de barras horizontales de salud mental por situación laboral hemos ordenado a los distintos grupos de población según su tasa de prevalencia de Cuadro Depresivo Mayor.
Vemos que el grupo incapacitado para trabajar representa la mayor tasa de depresión lo cuál es lógico.
Si nos fijamos en el resto de barras vemos que las personas en desempleo tienen una mayor tasa de depresióna a aquellas personas que se encuentran trabajando.
Ahora vamos a ver si verdaderamente las TICs afectan a los niveles de depresión en el gráfico de Interacción entre Conectividad, Situación Laboral y Salud Mental.
# ==============================================================================
# 1. DATOS SALUD (EMPLEO)
# ==============================================================================
df_salud_empleo <- mis_datos_salud_mental$depresion_actividad_economica %>%
rename(
Actividad = `Actividad.económica`,
Tipo_Depresion = `Prevalencia.depresión`,
Porcentaje = Total
) %>%
filter(
Sexo == "Ambos sexos",
Tipo_Depresion == "Cuadro depresivo mayor",
Actividad != "TOTAL"
) %>%
mutate(
Tasa_Depresion = parse_number(Porcentaje, locale = locale(decimal_mark = ",")),
Situacion_laboral = case_when(
Actividad %in% c("Parado/a", "Parados", "En desempleo", "Desempleado") ~ "En desempleo",
Actividad == "Jubilado/a o prejubilado/a" ~ "Jubilado/Pensionista",
Actividad == "Labores del hogar" ~ "Labores del hogar",
Actividad == "Incapacitado/a para trabajar" ~ "Incapacitado",
Actividad == "Estudiando" ~ "Estudiando",
Actividad == "Trabajando" ~ "Trabajando",
TRUE ~ "Otros"
)
)
# ==============================================================================
# 2. DATOS TIC (Uso de Internet)
# ==============================================================================
lista_frecuencias <- c(
"Han usado Internet diariamente (al menos 5 días a la semana)",
"Han utilizado internet varias veces al día"
)
df_tic_empleo <- mis_datos_tic$uso_internet_socioeconomico %>%
rename(
Grupo = Clase.de.población,
Características = Características.socioeconómicas,
Frecuencia = Frecuencia.de.uso,
Total_TIC = Total
) %>%
filter(
Grupo == "Total de personas (16 a 74 años)",
Frecuencia %in% lista_frecuencias
) %>%
mutate(
Tasa_Internet = parse_number(Total_TIC, locale = locale(decimal_mark = ",")),
Situacion_laboral = case_when(
Características == "Situación laboral: Activos ocupados" ~ "Trabajando",
Características == "Situación laboral: Activos parados" ~ "En desempleo",
Características == "Situación laboral: Inactivos: Estudiantes" ~ "Estudiando",
Características == "Situación laboral: Inactivos: Pensionistas" ~ "Jubilado/Pensionista",
Características == "Situación laboral: Inactivos: Labores del hogar" ~ "Labores del hogar",
TRUE ~ "Otros"
)
) %>%
group_by(Situacion_laboral) %>%
summarise(Tasa_Internet = mean(Tasa_Internet, na.rm = TRUE))
# ==============================================================================
# 3. UNIÓN FINAL
# ==============================================================================
df_final <- left_join(df_salud_empleo, df_tic_empleo, by = "Situacion_laboral") %>%
filter(!is.na(Tasa_Internet)) %>%
select(Situacion_laboral, Tasa_Depresion, Tasa_Internet, Actividad)
# ==============================================================================
# 4. GRAFICO SALUD EMPLEO
# ==============================================================================
grafico_salud_empleo <- df_salud_empleo %>%
ggplot(mapping = aes(x = reorder(Actividad, -Tasa_Depresion), y = Tasa_Depresion)) +
geom_bar(stat = "identity", aes(fill = Tasa_Depresion == max(Tasa_Depresion)), width = 0.7, alpha = 0.9) +
geom_text(aes(label = paste0(Tasa_Depresion, "%")),
hjust = -0.2,
fontface = "bold",
colour = "#2C3E50",
size = 4.5) +
scale_fill_manual(values = c("FALSE" = "#EBF5FB", "TRUE" = "#21618C"), guide = "none") +
scale_x_discrete(labels = function(x) stringr::str_wrap(x, width = 25)) +
scale_y_continuous(expand = expansion(mult = c(0, .15))) +
coord_flip() +
labs(
x = NULL,
y = "Tasa de Depresión (%)",
title = "A. Salud Mental por Situación Laboral",
subtitle = "El desempleo es el factor más crítico."
) +
theme_classic() +
theme(
plot.title = element_text(face = "bold", size = 16, hjust = 0),
axis.text.y = element_text(size = 11, face = "bold", color = "black"),
axis.text.x = element_blank(),
axis.ticks = element_blank(),
axis.line.x = element_blank()
)
# ==============================================================================
# 5. GRÁFICO SALUD EMPLEO CON TICS
# ==============================================================================
grafico_depresion_tics_empleo <- df_final %>%
mutate(Grupo = case_when(
Situacion_laboral == "Estudiando" ~ "Estudiantes",
Situacion_laboral == "En desempleo" ~ "Parados",
TRUE ~ "Otros"
)) %>%
ggplot(aes(x = Tasa_Internet, y = Tasa_Depresion)) +
geom_smooth(method = "lm", se = FALSE, color = "black", size = 1, linetype = "dashed") +
geom_point(aes(fill = Grupo), size = 6, shape = 21, color = "white", stroke = 1.5) +
geom_text_repel(aes(label = Situacion_laboral),
size = 5,
color = "grey40",
point.padding = 0.5,
box.padding = 0.5) +
scale_fill_manual(values = c("Estudiantes" = "#F28E2B",
"Parados" = "#21618C",
"Otros" = "#EBF5FB")) +
labs(
title = "Interacción entre Conectividad, Situación Laboral y Salud Mental",
subtitle = "Comparativa: Estudiantes vs Desempleados",
x = "Uso Diario de Internet (%)",
y = "Depresión Mayor (%)"
) +
theme_classic() +
theme(
plot.title = element_text(face = "bold", size = 16),
plot.subtitle = element_text(size = 12, color = "grey30"),
axis.text = element_text(face = "bold", size = 10),
legend.position = "none"
)
# ==============================================================================
# 6. COMPOSICIÓN FINAL (PATCHWORK)
# ==============================================================================
composicion_graficos_empleo <- grafico_salud_empleo / grafico_depresion_tics_empleo +
plot_annotation(
title = 'IMPACTO DEL TRABAJO Y TICs EN LA SALUD MENTAL',
theme = theme(plot.title = element_text(size = 20, face = "bold", hjust = 0.5))
)
print(composicion_graficos_empleo)De aquí se pueden sacar una serie de conclusiones:
El paro es el enemigo nº 1: El desempleo dispara el riesgo de depresión más que cualquier otra cosa.
Tener internet no te salva: Los desempleados usan internet tanto como los estudiantes, pero tienen muchísima más depresión. La tecnología no es una “vacuna” contra el malestar del paro.
Estar ocupado protege: Trabajar o estudiar son los verdaderos escudos para la salud mental, no la conexión digital.
Para la realización de este estudio se han utilizado datos oficiales procedentes de las siguientes operaciones estadísticas del Instituto Nacional de Estadística (INE):
Instituto Nacional de Estadística (INE). (2018). Encuesta Nacional de Salud de España 2017 (ENSE 2017). Recuperado de INEbase - Resultados ENSE 2017
Instituto Nacional de Estadística (INE). (2024). Encuesta sobre Equipamiento y Uso de Tecnologías de Información y Comunicación en los Hogares 2024. Recuperado de INEbase - Resultados TIC 2024
Este análisis ha sido realizado utilizando el lenguaje de programación R. Se han empleado los siguientes paquetes principales para el procesamiento, análisis y visualización de datos: